package com.songshuai.customer.client.dao.customer;

import com.songshuai.webapi.baseapi.model.sales.PushRecord;

import java.util.List;

/**
 * 此类为[基础代码]自动生成，已经拥有基本的增删改成操作
 * <其他请自行扩展>
 * @Author: 松鼠AI
 * @Date: 2019-03-18 19:26:15
 */
public interface PushRecordMapper {
    
    /**
     * 根据主键查询单一记录
     * @param id
     * @return PushRecord
     */
    PushRecord selectByPrimaryKey(String id);
    
    /**
     * 根据条件查询多条记录
     * @param entity
     * @return List<PushRecord>
     */
    List<PushRecord> selectByEntityList(PushRecord entity);
    
    /**
     * 根据条件查询单条记录
     * @param entity
     * @return PushRecord
     */
    PushRecord selectByEntity(PushRecord entity);
    
    /**
     * 根据条件查询ID
     * @param entity
     * @return String
     */
    String selectById(PushRecord entity);
  
    /**
     * 根据条件查询ID集合
     * @param entity
     * @return List<String>
     */
    List<String> selectByIds(PushRecord entity);
    
    /**
     * 插入单条记录（全字段） 
     * @param entity 
     * @return int
     */
    int insert(PushRecord entity);
    
    /**
     * 插入单条记录（字段为空则不添加） 
     * @param entity 
     * @return int
     */
    int insertSelective(PushRecord entity);
    
    /**
     * 根据主键修改
     * @param entity 
     * @return int
     */
    int updateByPrimaryKey(PushRecord entity);
    
    /**
     * 批量插入
     * @param entitys
     * @return int
     */
    int insertBatch(List<PushRecord> entitys);
    
    /**
     * 根据主键批量修改
     * @param entitys
     * @return int
     */
    int updateBatch(List<PushRecord> entitys);
    
	/**
     * 根据主键删除单条记录
     * @param id
     *
     */
    void deleteByPrimaryKey(String id);
	
    /**
     * 根据主键批量删除
     * @param list
     * @return int
     */
    int deleteBatch(List<String> list);

    /**
     * 根据某些条件删除
     * @param entity
     * @return int
     */
    int deleteByEntity(PushRecord entity);
    
}